Several cryptographic algorithms are widely available in the marketplace today. The particularities of each algorithm generally make them more suited for one particular application or another. The majority of today's algorithms are based on mathematical concepts such that the current computers are unable to decrypt the ciphered messages. They are based on a so called one-way mathematical function which by hypothesis is easy to use, but hard to be broken.
A function is called a “one-way” function if the following three conditions are simultaneously satisfied:
1. The description off is publicly known and does not require any secret information for its operation;
2. Given x, it is easy to compute f(x);
3. Given y, in the range off, it is too hard defined x such that f(x)=y;
By definition, one way functions are fairly simple. They receive input, generate a result, and from that result it is difficult to identify what the original factors were. One could run the function for all possible input values until the same set of results is found and thus identify the original factors, provided there is not more than one set of inputs which generates the same result.
A one-time pad system is another simple and efficient strategy that can be used as a basis for providing a secure communication between endpoints. The mathematical side of the one-time pad algorithm is simple XOR operation. While it is a simple procedure, it was the first known unconditionally secured encryption system designed. While the majority of the algorithms are secure because of the lack of computational resources to break their ciphers, the one-time pad uses more abstract concepts than math to provide an increase in security.
The one-time pad cipher trusts in a completely random sequence of encryption keys, shared by the end-points. The key is basically a sequence of bits that have the same size as the message to be sent and is used to hide its content. Assuming that M is the message and K is the key, the result of M XOR K (bit-to-bit) is the encrypted text.
The one-time pad system is known as unbreakable because once for each message, a different random key is used for its encryption, and there is no way to find a pattern in the decrypted messages.
Diffie-Hellman provided a solution to provide or share secrets on a public communications channel. The introduced method has been used for years in order to generate a common secret key among endpoints.